-- @Author: 作者QQ381990860
-- @Date:   2021-11-28 11:35:23
-- @Last Modified by:   作者QQ381990860
-- @Last Modified time: 2022-08-26 17:34:06
-- @Author: 作者QQ381990860
-- @Date:   2021-11-28 00:23:16
-- @Last Modified by:   作者QQ381990860
-- @Last Modified time: 2021-11-28 12:08:49
--======================================================================--
-- @作者: QQ381990860
-- @创建时间:   2019-12-03 02:17:19
-- @Last Modified time: 2019-12-17 04:46:04
--======================================================================--
local 场景类_代代内挂 = class()
local tp,zts,zts1
local floor = math.floor
local insert = table.insert
function 场景类_代代内挂:初始化(根)
	self.ID = 262
	self.x = 133
	self.y = 72
	self.xx = 0
	self.yy = 0
	self.注释 = "守护内挂"
	self.可视 = false
	self.鼠标 = false
	self.焦点 = false
	self.可移动 = true
	self.窗口时间 = 0
	tp = 根
	zts = tp.字体表.普通字体
	zts1 = tp.字体表.描边字体
end

function 场景类_代代内挂:打开(数据)
	if self.可视 then
		self.可视 = false
	else
	if  self.x > 全局游戏宽度 then
    self.x = 220+(全局游戏宽度-800)/2
    end
		insert(tp.窗口_,self)
		self.数据=数据
		self:重新加载资源()
	    tp.运行时间 = tp.运行时间 + 1
	  	self.窗口时间 = tp.运行时间
	    self.可视 = true
	    内挂系统.自动刷怪=self.数据.内挂.自动刷怪
	    --table.print(self.数据)
	end
end
function 场景类_代代内挂:刷新(数据)
	self.数据=数据
	self.资源组[3]:置打勾框(self.数据.内挂.自动刷怪)
   self.资源组[13]:置打勾框(self.数据.内挂.回收开关)
   self.资源组[14]:置打勾框(self.数据.内挂.物品存放)
   self.资源组[15]:置打勾框(self.数据.内挂.银子存放)
   self.资源组[16]:置打勾框(self.数据.内挂.红罗羹开关)
    self.资源组[17]:置打勾框(self.数据.内挂.摄妖香开关)
   -- self.资源组[18]:置打勾框(self.数据.回收设置.魔兽要诀回收)
   -- self.资源组[19]:置打勾框(self.数据.回收设置.天书回收)
   -- self.资源组[20]:置打勾框(self.数据.回收设置.装备回收)
	内挂系统.自动刷怪=self.数据.内挂.自动刷怪
	self.打怪列表=self.数据.内挂.待打列表
	if self.数据.内挂.自动刷怪==false then
		引擎.置标题(全局游戏标题 .."- " ..窗口标题.服务器.. "- (" .. 窗口标题.名称 .. "[" .. 窗口标题.id .. "]) - " .. "版本v"..版本号)
	end
end
function  场景类_代代内挂:重新加载资源()
	local 资源 = tp.资源
	local 按钮 =tp._按钮
	local 自适应 = tp._自适应
	local 小型选项栏 = tp._小型选项栏
	self.资源组 = {
	[1] = 自适应.创建(0,1,276,357,3,9),
    [2] = 按钮.创建(自适应.创建(18,4,16,16,4,3),0,0,4,true,true),
    [3] = 按钮.创建(资源:载入('JM.dll',"网易WDF动画",0xFF205590),0,0,1,true,true),
    [4] = 按钮.创建(自适应.创建(11,4,65,20,1,3),0,0,4,true,true,"初始化"),
    [5] = 自适应.创建(3,1,150,18,1,3,nil,18),
    [6] = 按钮.创建(自适应.创建(21,4,18,19,4,3),0,0,4,true,true),
    [7] = 按钮.创建(自适应.创建(21,4,18,19,4,3),0,0,4,true,true),
    [8] = 按钮.创建(自适应.创建(21,4,18,19,4,3),0,0,4,true,true),
    [9] = 小型选项栏.创建(自适应.创建(6,1,155,110,3,9),"怪物壹"),
    [10] = 小型选项栏.创建(自适应.创建(6,1,155,110,3,9),"怪物贰"),
    [11] = 小型选项栏.创建(自适应.创建(6,1,155,110,3,9),"怪物叁"),
    [12] = 按钮.创建(自适应.创建(11,4,42,20,1,3),0,0,4,true,true,"保存"),
    [13] = 按钮.创建(资源:载入('JM.dll',"网易WDF动画",0xFF205590),0,0,1,true,true),
    [14] = 按钮.创建(资源:载入('JM.dll',"网易WDF动画",0xFF205590),0,0,1,true,true),
    [15] = 按钮.创建(资源:载入('JM.dll',"网易WDF动画",0xFF205590),0,0,1,true,true),
    [16] = 按钮.创建(资源:载入('JM.dll',"网易WDF动画",0xFF205590),0,0,1,true,true),
    [17] = 按钮.创建(资源:载入('JM.dll',"网易WDF动画",0xFF205590),0,0,1,true,true),
    [18] = 按钮.创建(资源:载入('JM.dll',"网易WDF动画",0xFF205590),0,0,1,true,true),
    [19] = 按钮.创建(资源:载入('JM.dll',"网易WDF动画",0xFF205590),0,0,1,true,true),
    [20] = 按钮.创建(资源:载入('JM.dll',"网易WDF动画",0xFF205590),0,0,1,true,true),
	}
   self.资源组[3]:置打勾框(self.数据.内挂.自动刷怪)
   self.资源组[13]:置打勾框(self.数据.内挂.回收开关)
   self.资源组[14]:置打勾框(self.数据.内挂.物品存放)
   self.资源组[15]:置打勾框(self.数据.内挂.银子存放)
   self.资源组[16]:置打勾框(self.数据.内挂.红罗羹开关)
   self.资源组[17]:置打勾框(self.数据.内挂.摄妖香开关)
   --self.资源组[18]:置打勾框(self.数据.回收设置.魔兽要诀回收)
   --self.资源组[19]:置打勾框(self.数据.回收设置.天书回收)
   --self.资源组[20]:置打勾框(self.数据.回收设置.装备回收)
	local wz = require("gge文字类")
	self.方正字体1 = wz.创建(程序目录.."Data/pic/hkyt_w5.ttf",12,false,true,true)
    self.方正字体1:置颜色(0xff000000)
    self.可打列表={}
    for n=1,#self.数据.怪物设置 do
    	if self.数据.怪物设置[n]~=nil then
    		table.insert(self.可打列表,self.数据.怪物设置[n])
    	end
    end
    self.打怪列表={[1]="待设置",[2]="待设置",[3]="待设置"}
    --table.print(self.数据)
    self.打怪列表=self.数据.内挂.待打列表
    self.待保存=false
    self.显示内挂版本=self:取内挂版本(self.数据.内挂.内挂版本)
	if self.数据.内挂.自动刷怪==false then
		引擎.置标题(全局游戏标题 .."- " ..窗口标题.服务器.. "- (" .. 窗口标题.名称 .. "[" .. 窗口标题.id .. "]) - " .. "版本v"..版本号)
	end
end
function 场景类_代代内挂:显示(dt,x,y)
	self.焦点 = false
   	self.资源组[1]:显示(self.x,self.y)
   	tp.窗口标题背景_:显示(self.x+self.资源组[1].宽度/2-90,self.y)
    tp.字体表.华康字体:置颜色(0xFFFFFFFF):显示(self.x+self.资源组[1].宽度/2-90+tp.窗口标题背景_.宽度/2-tp.字体表.描边字体:取宽度("死神内挂")/2,
    	self.y+3,"死神内挂")
	local v = self.x + self.资源组[1].宽度 - 48
	self.资源组[2]:显示(v+16,self.y+3)
	self.资源组[2]:更新(x,y)
	if self.资源组[2]:事件判断() then
		self:打开()
	end
	引擎.画矩形(self.x+7,self.y+95,self.x+264,self.y+221,ARGB(255,58,74,91))
	daidaihuakuang(self.x+7,self.y+95,self.x+264,self.y+221,-16776961)
	zts1:显示(self.x+45,self.y+104,"回收开关")
	zts1:显示(self.x+45,self.y+134,"物品存放")
	zts1:显示(self.x+45,self.y+164,"银子存放")
	zts1:显示(self.x+45,self.y+194,"补充罗羹")

	 zts1:显示(self.x+172,self.y+104,"补充妖香")
	-- zts1:显示(self.x+172,self.y+134,"要诀回收")
	-- zts1:显示(self.x+172,self.y+164,"天书回收")
	-- zts1:显示(self.x+172,self.y+194,"装备回收")
	zts1:显示(self.x+15,self.y+282,"内挂版本:"..self.显示内挂版本)
	zts1:显示(self.x+15,self.y+302,"到期时间:"..测试时间(self.数据.内挂.剩余时间))
	self.资源组[13]:显示(self.x+13,self.y+100,true)
	self.资源组[14]:显示(self.x+13,self.y+130,true)
	self.资源组[15]:显示(self.x+13,self.y+160,true)
	self.资源组[16]:显示(self.x+13,self.y+190,true)
    self.资源组[17]:显示(self.x+140,self.y+100,true)
	--self.资源组[18]:显示(self.x+140,self.y+130,true)
	--self.资源组[19]:显示(self.x+140,self.y+160,true)
	--self.资源组[20]:显示(self.x+140,self.y+190,true)
	self.资源组[3]:更新(x,y)
	self.资源组[13]:更新(x,y)
	self.资源组[14]:更新(x,y)
	self.资源组[15]:更新(x,y)
	self.资源组[16]:更新(x,y)
	self.资源组[4]:更新(x,y)
	self.资源组[6]:更新(x,y)
	self.资源组[7]:更新(x,y)
	self.资源组[8]:更新(x,y)
	self.资源组[17]:更新(x,y)
	--self.资源组[18]:更新(x,y)
	--self.资源组[19]:更新(x,y)
	--self.资源组[20]:更新(x,y)
	self.资源组[12]:更新(x,y,self.待保存)
	self.资源组[3]:显示(self.x+13,self.y+324,true)
	self.资源组[4]:显示(self.x+195,self.y+324)
	self.资源组[5]:显示(self.x+60,self.y+28)
	self.资源组[5]:显示(self.x+60,self.y+48)
	self.资源组[5]:显示(self.x+60,self.y+68)
	self.资源组[6]:显示(self.x+209,self.y+29)
	self.资源组[7]:显示(self.x+209,self.y+49)
	self.资源组[8]:显示(self.x+209,self.y+69)
	self.方正字体1:显示(self.x+63,self.y+32,self.打怪列表[1])
	self.方正字体1:显示(self.x+63,self.y+52,self.打怪列表[2])
	self.方正字体1:显示(self.x+63,self.y+72,self.打怪列表[3])
    zts1:显示(self.x+13,self.y+27,"怪物壹")
    zts1:显示(self.x+13,self.y+47,"怪物贰")
    zts1:显示(self.x+13,self.y+67,"怪物叁")
	zts1:显示(self.x+45,self.y+328,"开始执行")
	self.资源组[9]:显示(self.x+57,self.y+47,x,y,self.鼠标)
	self.资源组[10]:显示(self.x+57,self.y+67,x,y,self.鼠标)
	self.资源组[11]:显示(self.x+57,self.y+87,x,y,self.鼠标)
	self.资源组[12]:显示(self.x+146,self.y+324)

    --print(左右,上下)
	if self.资源组[3]:事件判断() then
		发送数据(147,{"1"})
		tp.窗口.代代内挂系统.时间判断=os.time()+10
	elseif self.资源组[13]:事件判断() then
		发送数据(154,{更改="全自动装备回收"})
	elseif self.资源组[14]:事件判断() then
		发送数据(154,{更改="物品自动存仓库"})
	elseif self.资源组[15]:事件判断() then
		发送数据(154,{更改="银子自动存钱庄"})
	elseif self.资源组[16]:事件判断() then
		发送数据(154,{更改="全自动补充红罗羹"})

	 elseif self.资源组[17]:事件判断() then
	 	发送数据(154,{更改="全自动补充摄妖香"})
	-- elseif self.资源组[18]:事件判断() then
	-- 	发送数据(154,{更改="要诀回收"})
	-- elseif self.资源组[19]:事件判断() then
	-- 	发送数据(154,{更改="天书回收"})
	-- elseif self.资源组[20]:事件判断() then
	-- 	发送数据(154,{更改="装备回收"})

	elseif self.资源组[4]:事件判断() then
		tp.窗口.代代内挂系统.程序=0
		tp.窗口.代代内挂系统.时间判断=os.time()+10
		内挂系统={自动刷怪=false}
        tp.提示:写入("#Y/初始化成功!")
    elseif self.资源组[6]:事件判断() then
		self.资源组[9]:打开(self.可打列表)
		if self.资源组[10].可视 then
			self.资源组[10]:打开()
		end
		if self.资源组[11].可视 then
		self.资源组[11]:打开()
	    end
    elseif self.资源组[7]:事件判断() then
		self.资源组[10]:打开(self.可打列表)
		if self.资源组[9].可视 then
			self.资源组[9]:打开()
		end
		if self.资源组[11].可视 then
		self.资源组[11]:打开()
	    end
    elseif self.资源组[8]:事件判断() then
		self.资源组[11]:打开(self.可打列表)
		if self.资源组[9].可视 then
			self.资源组[9]:打开()
		end
		if self.资源组[10].可视 then
		self.资源组[10]:打开()
	    end
	elseif self.资源组[9]:事件判断() then
		self.待保存=true
		self.打怪列表[1]=self.资源组[9].弹出事件
		self.资源组[9].弹出事件 = nil
	elseif self.资源组[10]:事件判断() then
		self.待保存=true
		self.打怪列表[2]=self.资源组[10].弹出事件
		self.资源组[10].弹出事件 = nil
	elseif self.资源组[11]:事件判断() then
		self.待保存=true
		self.打怪列表[3]=self.资源组[11].弹出事件
		self.资源组[11].弹出事件 = nil
	elseif self.资源组[12]:事件判断() then
         发送数据(152,{列表=self.打怪列表})
         self.待保存=false
	end
	--print(左右,上下)
end
function 场景类_代代内挂:取内挂版本(n)
	if n==1 then
		return "普通版"
	elseif n==2 then
		return "高级版"
	else
		return "普通版"
	end
end

function 场景类_代代内挂:检查点(x,y)
	if self.资源组[1]:是否选中(x,y)  then
		return true
	end
end

function 场景类_代代内挂:初始移动(x,y)
	tp.运行时间 = tp.运行时间 + 1
	if not tp.消息栏焦点 then
  		self.窗口时间 = tp.运行时间
 	end
	if not self.焦点 then
		tp.移动窗口 = true
	end
	if self.鼠标 and  not self.焦点 then
		self.xx = x - self.x
		self.yy = y - self.y
	end
end

function 场景类_代代内挂:开始移动(x,y)
	if self.鼠标 then
		self.x = x - self.xx
		self.y = y - self.yy
	end
end

return 场景类_代代内挂